package com.hs.controller;

import com.alibaba.fastjson.JSONObject;
import springfox.documentation.annotations.ApiIgnore;

/**
 * @Author lxz
 * @Name
 * @Date 2024/11/19 14:55
 */
@ApiIgnore
public class BaseController {

    /**
     * 渲染失败数据
     *
     * @return result
     */
    protected JSONObject renderError() {
        JSONObject result = new JSONObject();
        result.put("success", false);
        result.put("status", "500");
        return result;
    }

    /**
     * 渲染失败数据（带消息）
     *
     * @param msg 需要返回的消息
     * @return result
     */
    protected JSONObject renderError(String msg) {
        JSONObject result = renderError();
        result.put("msg", msg);
        return result;
    }

    /**
     * 渲染成功数据
     *
     * @return result
     */
    protected JSONObject renderSuccess() {
        JSONObject result = new JSONObject();
        result.put("success", true);
        result.put("status", "200");
        return result;
    }

    /**
     * 渲染成功数据（带信息）
     *
     * @param msg 需要返回的信息
     * @return result
     */
    protected JSONObject renderSuccess(String msg) {
        JSONObject result = renderSuccess();
        result.put("msg", msg);
        return result;
    }
    /**
     * 渲染成功数据（带信息）
     *
     * @param msg 需要返回的信息
     * @return result
     */
    protected JSONObject renderSuccess(Object obj, String msg) {
        JSONObject result = renderSuccess();
        result.put("obj",obj);
        result.put("msg", msg);
        return result;
    }

    /**
     * 渲染成功数据（带数据）
     *
     * @param obj 需要返回的对象
     * @return result
     */
    protected JSONObject renderSuccess(Object obj) {
        JSONObject result = renderSuccess();
        result.put("obj",obj);
        return result;
    }
}
